package com.sunlee.admin.api.module.sys.service;


import com.sunlee.admin.api.module.sys.dto.SysRoleDTO;
import com.sunlee.admin.api.module.sys.entity.SysRoleEntity;
import com.sunlee.common.core.entity.PageData;
import com.sunlee.common.core.service.BaseService;

import java.util.List;
import java.util.Map;


/**
 * 角色
 *
 * @author sunlee
 */
public interface SysRoleService extends BaseService<SysRoleEntity> {

    /**
     * 分页查询角色
     *
     * @param params 查询参数
     * @return 分页角色列表
     */
    PageData<SysRoleDTO> page(Map<String, Object> params);

    /**
     * 查询角色列表
     *
     * @param params 查询参数
     * @return 角色列表
     */
    List<SysRoleDTO> list(Map<String, Object> params);

    /**
     * 通过主键查询角色
     *
     * @param id 主键ID
     * @return 角色
     */
    SysRoleDTO get(Long id);

    /**
     * 插入角色
     *
     * @param dto 角色实体
     */
    void save(SysRoleDTO dto);

    /**
     * 更新角色
     *
     * @param dto 角色实体
     */
    void update(SysRoleDTO dto);

    /**
     * 根据主键ID批量删除
     *
     * @param ids 主键ID
     */
    void delete(Long[] ids);

}
